<?php
include_once getenv('DOCUMENT_ROOT').'/evento/ACTION/ACTFactory.class.php';
include_once getenv('DOCUMENT_ROOT').'/evento/VOB/VOBFactory.class.php';
include_once getenv('DOCUMENT_ROOT').'/evento/VIEW/template/TFormat.class.php';

session_start();

$VOBf = new VOBFactory();
$ACTf = new ACTFactory();
$f = new TFormat();

$objEvento = $VOBf->getEvento();
$objActionEvento = $ACTf->getEventoAction();

if (isset($_GET['acao']) && $_GET['acao'] == 'prepareUpdate' && isset($_GET['id'])!= null) {

// Update
    if(!is_numeric($_GET['id'])){
          header( "Location: eventos.php?q=Error");
          exit();
      }

      $id = str_replace(array("<", ">", "\\", "/", "=", "'", "?"), "", $_GET['id']);

      $objEvento->setId($id);
      $objEvento = $objActionEvento->obterPorId($objEvento);

      session_register("eventoUpdate");
      $_SESSION['eventoUpdate'] = $objEvento;

      header( "Location: cad_evento.php?acao=update");

} elseif (isset($_GET['acao']) && $_GET['acao'] == 'prepareInfo' && isset($_GET['id'])!= null) {

      if(!is_numeric($_GET['id'])){
          header( "Location: eventos.php?q=Error");
          exit();
      }

      $id = str_replace(array("<", ">", "\\", "/", "=", "'", "?"), "", $_GET['id']);

      $objEvento->setId($id);
      $objEvento = $objActionEvento->obterPorId($objEvento);
      
      if($objEvento == null){
          header( "Location: eventos.php?q=Error");
          exit();
      }

      if($objEvento->getIdUsuarioCriador()!= $_SESSION['EVENTO_usuario']->getId() && $_GET['t']!=1){
          header( "Location: eventos.php?q=Error");
          exit();
      }

      session_register("eventoInfo");
      $_SESSION['eventoInfo'] = $objEvento;
      $_SESSION['transp'] = $_GET['t'];
      header( "Location: inf_evento.php?acao=informar");
    

} elseif (isset($_GET["acao"]) && ($_GET["acao"]=="inserir")){
//var_dump($_POST);
//var_dump($_SESSION['itemJustificado']);
    $objEvento->setJustificativa('');
    $objEvento->setValorExtra(0.00);

    $objEvento->setNome(strtoupper($_POST['nom_evento']));
    //$objEvento->setDataEvento($f->dataNormalToInversa($_POST['dat_evento']));
    $objEvento->setDataInicio($f->dataNormalToInversa($_POST['dat_evento_inicio']));
    $objEvento->setDataFim($f->dataNormalToInversa($_POST['dat_evento_fim']));
    $objEvento->setIdSetor($_POST['ide_setor']);
    if($_SESSION['itemJustificado']!=null){
        $objEvento->setJustificativa(addslashes(trim($_SESSION['itemJustificado']['descricao'])));
        $objEvento->setValorExtra($_SESSION['itemJustificado']['vlr']);
    }
    $objEvento->setLocal($_POST['des_local']);
    $objEvento->setDescricao($_POST['des_evento']);
    $objEvento->setIdUsuarioCriador($_SESSION['EVENTO_usuario']->getId());
    $objEvento->setDataCriacao(mktime());

    for(
        $iterator = $_SESSION['arrayObjSubitem']->getIterator();
        $iterator->valid();
        $iterator->next()) {
            $objEvento->setSubitens($iterator->current());
	}

    $ok = $objActionEvento->inserir($objEvento);
    session_unregister('arrayObjSubitem');
    session_unregister('itemJustificado');
//
    if ($ok) {
        header( "Location: eventos.php?q=ok") ;
    } else {
        header( "Location: eventos.php?q=error") ;
    }

} elseif (isset($_GET["acao"]) && $_GET["acao"]=="update"){
//echo "a";var_dump($_SESSION['itemJustificado']);
    $objEvento->setJustificativa('');
    $objEvento->setValorExtra(0.00);
// Update
    $objEvento->setId($_POST['ide_evento']);
    $objEvento->setNome(strtoupper($_POST['nom_evento']));
    $objEvento->setDataInicio($f->dataNormalToInversa($_POST['dat_evento_inicio']));
    $objEvento->setDataFim($f->dataNormalToInversa($_POST['dat_evento_fim']));
    //$objEvento->setDataEvento($f->dataNormalToInversa($_POST['dat_evento']));
    $objEvento->setIdSetor($_POST['ide_setor']);
    if($_SESSION['itemJustificado']!=null or $_SESSION['itemJustificado']['descricao']!=false){
        $objEvento->setJustificativa(addslashes(trim($_SESSION['itemJustificado']['descricao'])));
        $objEvento->setValorExtra($_SESSION['itemJustificado']['vlr']);
    }
    $objEvento->setLocal($_POST['des_local']);
    $objEvento->setStatus('A');
    $objEvento->setDescricao($_POST['des_evento']);
    $objEvento->setIdUsuarioAtualizador($_SESSION['EVENTO_usuario']->getId());
    $objEvento->setDataAtualizacao(mktime());

    for(
        $iterator = $_SESSION['arrayObjSubitem']->getIterator();
        $iterator->valid();
        $iterator->next()) {
            $objEvento->setSubitens($iterator->current());
	}

    $ok = $objActionEvento->alterar($objEvento);
    session_unregister('arrayObjSubitem');
    session_unregister('itemJustificado');

     if ($ok) {
        header( "Location: eventos.php?q=ok") ;
    } else {
        header( "Location: eventos.php?q=error") ;
    }

} elseif (isset($_GET["acao"]) && $_GET["acao"]=="deletar"){

    $objEvento->setId($_GET['id']);
    $objEvento=$objActionEvento->obterPorId($objEvento);

    $ok = $objActionEvento->deletar($objEvento);
    if ($ok) {
        header( "Location: eventos.php?q=ok") ;
    } else {
        header( "Location: eventos.php?q=error") ;
    }
} 
?>
